package com.evil.application.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.evil.application.pojo.dto.apply.CopyAppApplySettingReqDTO;
import com.evil.application.pojo.entity.ApplicationApplySetting;
import com.evil.application.pojo.entity.ApplicationInfo;

/**
 * 应用提交设置表
 *
 * @author liyang
 * @date 2022-08-08 00:00
 */
public interface ApplicationApplySettingService extends IService<ApplicationApplySetting> {

    /**
     * 检查应用申请配置
     *
     * @param applicationInfo applicationInfo
     */
    void checkApplicationApplySetting(ApplicationInfo applicationInfo);

    /**
     * 初始化应用提交设置
     *
     * @param applicationInfo applicationInfo
     */
    void initApplySetting(ApplicationInfo applicationInfo);

    /**
     * 删除应用提交设置
     *
     * @param applicationInfo applicationInfo
     */
    void deleteApplySetting(ApplicationInfo applicationInfo);

    /**
     * 复制应用提交设置
     *
     * @param copyAppApplySettingReqDTO copyAppApplySettingReqDTO
     */
    void copyApplySetting(CopyAppApplySettingReqDTO copyAppApplySettingReqDTO);

    /**
     * 发布应用提交设置
     *
     * @param applicationInfo applicationInfo
     */
    void publishApplySetting(ApplicationInfo applicationInfo);

    /**
     * 还原应用提交设置
     *
     * @param applicationInfo applicationInfo
     */
    void restoreApplySetting(ApplicationInfo applicationInfo);

}
